import {getManager, managerCount} from '../../utils/request'
const state = {
  // 管理员列表
  manager:[],
  size:2,//每页显示的记录数
  page:1,//当前的页码数
  count:0,//总的记录数
}

const mutations = {
  changeManager(state,arr){
    state.manager = arr
  },
  changeCount(state,count){
    state.count = count
  },
  changePage(state,page){
    state.page = page
  }

}

const actions = {
  managerActions(context){
    var params = {
      size:context.state.size,
      page:context.state.page
    }
    // 发起获取管理员列表请求
    getManager(params).then(res=>{
      // 根据当前页码数获取的数据是否为空
      if((res.data.list === null || res.data.list.length === 0) && context.state.page > 1){
        var page = context.state.page -1;
        context.commit('changePage',page)
        // 自调
        context.dispatch('managerActions')
        return
      }
      context.commit('changeManager',res.data.list)
    })
  },
  // 获取总的记录数
  countActions(context){
    // 发起管理员总数的请求
    managerCount().then(res=>{
      context.commit('changeCount',res.data.list[0].total)
    })
  },
  // 操作当页码总数
  pageActions(context,page){
    context.commit('changePage',page)
  }
}

const getters = {
  manager(state){
    return state.manager
  },
  count(state){
    return state.count
  },
  size(state){
    return state.size
  }
}

export default {
  state,
  mutations,
  actions,
  getters,
  namespaced:true,
}
